1. Field of the Invention
This invention relates generally to the field of data information processing, and in particular to simplifying user access to information stored in relational databases.
2. Discussion of the Related Art
Relational databases are used in numerous applications to store a wide variety of data. Software applications are commercially available for creating relational databases and storing data therein. Examples of these software applications include products such as SYBASE SQL Server, Microsoft SQL Server, Oracle, and IBM DB2. While these products provide the capability to store data in various formats, they generally do not provide means by which a typical user of the database system can cross-reference information contained within separate catalogs or tables of the database. Cross-references between related tables are typically preprogrammed into the database by a system administrator or some other individual having knowledge of a programming language such as SQL.
FIG. 1 shows an example of a data base 10 containing eight tables of information including a Customer table 12, a Corp table 14, a Freq.sub.-- Flyer table 16, a Serv.sub.-- Hist table 18, a Service.sub.-- ID table 20, a Serv.sub.-- Desc table 22, a Travel.sub.-- Dtl table 24, and an Airline table 26. Each of the tables contain several columns of information. As an example, the Freq.sub.-- Flyer Table 16 contains an Airline.sub.-- I.D. column 16a, a Customer.sub.-- I.D. column 16b, and a Points.sub.-- Amt column 16c. Tables 12 through 26 are shown connected by interconnecting lines 28 through 48 each of which connect a column of a first table to a column of a second table having the same column name as the column of the first table. These interconnecting lines connect related tables and allow a user to easily access the information contained in a related table without making a new query into the database. For example, when a user is utilizing the Customer table 12, the user may wish to see additional information regarding a particular customer's company. If the cross-reference connection 28 exists, the user can directly access the information in the Corp table 14 from the Customer table 12 rather than exiting the Customer table and accessing the Corp table 14.
In the existing database management systems, the relationships shown in FIG. 1, are preprogrammed into the database by a system administrator using complex programming techniques and a programming language such as SQL. The system administrator when constructing a database will typically provide some relationships between related tables, but will not provide all of the relationships that inherently exist because of the programming time required for accomplishing this and because the system administrator may not be aware of all of the relationships that exist between tables in the database. Additional problems and limitations are created for the user when the system administrator is not familiar with the needs of the user, and therefore, not familiar with which relationships the user would find most useful. When a user of the database management system requires additional joining of the tables in the database, beyond that which is originally programmed by the system administrator, a request must be made to the system administrator or some other individual familiar with the programming language of the database to provide the system with this capability. Additional programming must then be performed to provide the user with the requested capability.
Graphical interface programs for accessing databases are commercially availabe, however, these programs require that a system administrator define the relationships that exist in the database as discussed above. An example of a database graphical interface program is FindOut| Analyst from Open Data Corporation, Lexington, Mass. Findout| Analyst allows a user to navigate a database to find information quickly, however, it requires that a dictionary exist that defines the relationships in the database. In the prior art systems, this dictionary must be generated manually by a system administrator as described above.